package com.axonactive.yolo.service.interfaces;

import java.util.List;

import com.axonactive.yolo.domain.FlightNotification;
import com.axonactive.yolo.dto.FlightNotificationDTO;
import com.axonactive.yolo.exception.FlightNotificationNotFoundException;

public interface FlightNotificationService {

	public List<FlightNotification> findByUserId(int userId);
	
	public List<FlightNotification> findByFlightId(String flightId);
	
	public List<FlightNotification> findByUserIdAndStatus(int userId, int status);

	public FlightNotification update(FlightNotification flightNotification)
			throws FlightNotificationNotFoundException;

	public FlightNotification create(FlightNotification flightNotification);
	
	public List<FlightNotificationDTO> convertToListFlightNotificationDTO(List<FlightNotification> flightNotifications);
	
	public boolean delete (int id) throws FlightNotificationNotFoundException;
	
	public FlightNotification findById(int id) throws FlightNotificationNotFoundException;
	
	public boolean deleteAllByFlightId(String flightId) throws FlightNotificationNotFoundException;
	
	public boolean deleteAllByUserId(int userId) throws FlightNotificationNotFoundException;


}
